package com.hsq.ndmall.wx.service;

import com.hsq.ndmall.common.utils.R;
import com.hsq.ndmall.wx.feign.catalog.ProductFeign;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;

import java.util.HashMap;
import java.util.List;
import java.util.Map;

/**
 * @author 黄四清
 * @version 1.0.0
 * @ClassName CatalogService.java
 * @Description TODO  分类服务
 * @createTime 2021年08月18日 19:02:00
 */
@Service
public class CatalogService {

    @Autowired
    ProductFeign productFeign;

    // 分类首页
    public Map findIndexData() {
        Map resultMap = new HashMap<String, List>();
        // 参数
        Map paramMap = new HashMap<String, String>();
        // TODO 1、currentCategory   	单击分类栏目的当前的分类信息
        paramMap.put("id", "1005000");
        R currentCategoryListR = productFeign.currentCategoryList(paramMap);
        resultMap.put("currentCategory", ((List<Map>) ((Map) currentCategoryListR.get("page")).get("list")).get(0));


        // TODO 2、categoryList   	一级分类详细信息
        paramMap.clear();
        R categoryListR = productFeign.currentCategoryList(paramMap);
        resultMap.put("categoryList", ((Map) categoryListR.get("page")).get("list"));

        // TODO 3、currentSubCategory   	当前分类信息的子分类信息
        paramMap.put("pid", "1005000");
        R currentSubCategoryR = productFeign.currentCategoryList(paramMap);
        resultMap.put("currentSubCategory", ((Map) currentSubCategoryR.get("page")).get("list"));
        return resultMap;
    }

    // 根据ID获取某一分类详情
    public Map selectCurrentById(Integer id) {
        Map resultMap = new HashMap<String, List>();
        // 参数
        Map paramMap = new HashMap<String, String>();
        // TODO 1、currentCategory
        R currentInfoR = productFeign.currentInfo(id);
        resultMap.put("currentCategory", currentInfoR.get("category"));

        // TODO 2、currentSubCategory
        paramMap.put("pid", id);
        R currentSubCategoryR = productFeign.currentCategoryList(paramMap);
        resultMap.put("currentSubCategory", ((Map) currentSubCategoryR.get("page")).get("list"));
        return resultMap;


    }
}
